﻿using SecretSourceAPI.Models;

namespace SecretSourceAPI.Services
{
    public interface IUserService
    {
        Task<string> RegisterUserAsync(RegisterModel model);

        Task<AuthenticationModel> GetTokenAsync(TokenRequestModel model);

        Task<string> AddRoleAsync(AddRoleModel model);

        Task<AuthenticationModel> RefreshTokenAsync(string token);

        Task<ApplicationUser> GetByIdAsync(string id);

        bool RevokeToken(string token);
    }
}
